package com.syh.jn.scm.infrastructure.repository.model.system;

import com.syh.core.ddd.infrastructure.repository.model.SuperBusinessModel;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;

/**
 * 角色
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Entity
@Table(name = "T_SYSTEM_ROLE")
@EqualsAndHashCode(callSuper = true)
public class RoleModel extends SuperBusinessModel {
  /**
   * 角色名称
   */
  @Column(name = "ROLE_NAME", columnDefinition = "varchar(50) COMMENT '角色名称'")
  private String roleName;
  /**
   * 创建时间
   */
  @Column(name="CREATE_TIME_STAMP" , columnDefinition=("bigint COMMENT '创建时间'"))
  private Long createTimeStamp;
  /**
   * 最后修改时间
   */
  @Column(name="LAST_UPDATE_TIME_STAMP" , columnDefinition=("bigint COMMENT '最后修改时间'"))
  private Long lastUpdateTimeStamp;

	/**
	 * 描述
	 */
	@Column(name = "DESCRIPTION", columnDefinition = ("varchar(500) COMMENT '最后修改时间'"))
	private String description;

	/**
	 * 排序等级
	 */
	@Column(name = "ORDER_LEVEL", columnDefinition = "int COMMENT '排序等级'")
	private Integer orderLevel;

	/**
	 *  所属终端系统:DOWNSTREAM,OPERATION,SUPPLIER,UPSTREAM
	 */
	@Column(name = "TERMINAL_TYPE", columnDefinition = "varchar(50) COMMENT '所属终端'")
	private String terminalType;
}

